热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ECCV2022|中科大京东提出:数据高效的Transformer目标检测器

点击下方卡片,关注“CVer”公众号AICV重磅干货,第一时间送达作者:encounter1997|已授权转载(源ÿ

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

作者:encounter1997 |  已授权转载(源:知乎)编辑:CVer

https://zhuanlan.zhihu.com/p/545435909

大家好!本文介绍一下我们中稿今年ECCV的一项工作:Towards Data-Efficient Detection Transformers。

8ae857a5a5d807d31b46220a5e97481a.png

论文链接:

arxiv.org/abs/2203.09507

代码链接:

https://github.com/encounter1997/DE-DETRshttps://github.com/encounter1997/DE-CondDETR

对目标检测模型所需要的数据进行标注往往是十分繁重的工作,因为它要求对图像中可能存在的多个物体的位置和类别进行标注。本文旨在减少Detection Transformer类目标检测器对标注数据的依赖程度,提升其数据效率。

Detection Transformer于2020年ECCV被提出,作为一种新兴的目标检测方法,Detection Transformers以其简洁而优雅的框架取得了越来越多的关注。关于Detection Transformer的细节和后续的发展历程,本文并不作展开介绍,感兴趣的小伙伴可以参考以下知乎文章:

https://zhuanlan.zhihu.com/p/366938351
研究动机

Detection Transformer的开山之作是DETR[1],在常用的目标检测数据集COCO[2]上,DETR取得了比Faster RCNN[3]更好的性能,但其收敛速度显著慢于基于CNN的检测器。为此,后续的工作大多致力于提升DETR的收敛性[4,5,6,7]。在COCO数据集上这些后续方法能够在训练代价相当的情况下取得比Faster RCNN更好的性能,表现出了Detection Transformers的优越性。

d6b0757617b01d1a08e014573ab32fb0.jpeg
图1:不同目标检测模型在数据量充足的COCO和小数据集Cityscapes上的性能对比,模型名称下方的数字表示训练周期数。

目前的研究似乎表明Detection Transformers能够在性能、简洁性和通用性等方面全面超越基于CNN的目标检测器。但我们研究发现,只有在COCO这样训练数据丰富(约118k训练图像)的数据集上Detection Transformers能够表现出性能上的优越,而当训练数据量较小时,大多数Detection Transformers的性能下降显著。如图1所示,在常用的自动驾驶数据集Cityscapes[8](约3k训练图像)上,尽管Faster RCNN能够稳定的取得优良的性能,大多数Detection Transformers的性能显著下降。并且尽管不同Detection Transformers在COCO数据集上性能差异不到2AP,它们在小数据集Cityscapes上的性能有大于15AP的显著差异。

这些发现表明Detection Transformers相比于基于CNN的目标检测器更加依赖标注数据(data hungry)。然而标注数据的获得并非易事,尤其是对于目标检测任务而言,不仅需要标出多个物体的类别标签,还需要准备的标出物体的定位框。同时,训练数据量大,意味着训练迭代次数多,因此训练Detection Transformers需要消耗更多的算力,增加了碳排放。可见,要满足现有Detection Transformers的训练要求需要耗费大量的人力物力。

消融探究

4ab4e95ad937cd2384d1f6dc3e2bfcfd.jpeg
表1:从SparseRCNN(表中缩写为SRCN)到DETR的模型转化

为了寻找影响Data-efficiency的关键因素,我们将data efficient的RCNN逐步转化为data hungry的Detection Transformer检测器,来消融不同设计的影响。值得一提的是,ATSS[9]和Visformer[10]采用了类似的模型转化实验,但ATSS旨在寻找anchor free检测器和anchor-based检测器之间的本质区别,Visformer旨在寻找对分类任务有利的transformer backbone结构,而我们致力于寻找影响Detection Transformers数据效率的主要因素。

为了从模型转化中获得insightful的结果,我们需要选择合适检测器展开实验。综合一下因素,我们选择Sparse RCNN和DETR来展开实验:(1)它们分别是RCNN和Detection Transformer中有代表性的检测器;(2)二者有很多相似的地方,比如相同的优化器、标签匹配、损失设计、数据增强和端到端等,这有利于我们尽可能排除其他影响因素的干扰,专注于核心的区别;(3)二者在data efficiency上存在显著差异。模型转化过程如表1所示,接下来,我们挑选模型转化中的关键步骤进行介绍:

去除FPN。由于CNNs具有局部性,FPN中能够以较小的计算代价实现多尺度特征融合,从而在少量数据的情况下提升目标检测的性能。对比之下,DETR中的attention机制具有全局感受野,导致其在高分辨率的特征图上需要消耗大量的运算资源,因此在DETR上做多尺度特征的建模往往是难以实现的。在本步中,我们去除RCNN中的FPN,并且与DETR一致,我们仅将backbone中32倍下采样的特征送入检测头做RoI Align和后续解码和预测。和预期的一样,去除FPN的多尺度建模作用,在50代的训练周期下模型性能下降显著by 7.3 AP。

加入Transformer编码器。在DETR中,transformer编码器可以看作是检测器中的neck,用来对backbone提取的特征做增强。在去除FPN neck后,我们将DETR的编码器加入模型得到表1中的Net3。有趣的是,Net3在50个训练周期下的性能下降,而在300个训练周期下性能有所提升。我们猜想像ViT[11]一样,解码器中的attention具有平方复杂度,因此需要更长的训练周期来收敛并体现其优势。

将动态卷积替换为自注意力机制。SparseRCNN中一个非常有趣的设计是解码器中的动态卷积,它的作用和DETR中的cross-attention作用十分相似,即根据图像特征和特定object candidate的相似性,自适应地将图像中的信息聚合到object candidate中。在本步骤中,我们将动态替换为cross-attention,对应的结果如表中Net4所示。反直觉的,参数量大并不一定会使模型更依赖数据。事实上,含有大量参数的动态卷积能够比参数量很小的cross-attention表现出了更好的数据效率。

去除RoIAlign。SparseRCNN和RCNNs family中的其他检测器一样根据目标检测的候选框对图像中指定区域的特征做采样,再基于采样后的特征做预测。对比之下,DETR中content query直接从图像的全局特征中聚合特定物体的信息。在本步骤,我们去除RoI Align操作。可以看到,模型的性能发生了显著下降。我们猜想从全局特征中学习如何关注到包含特定物体的局部区域是non-trivial的,因此模型需要从更多的数据和训练周期中学习到locality的特性。而在见过的数据量小的情况下性能会显著下降。

去除初始的proposal。最后,DETR直接预测normalized检测框中心坐标和宽度和高度,而RCNNs预测gt检测框相较于初始proposal检测框的offsets。在本步骤中,我们消除此差异。这一微小的区别使得模型性能显著下降,我们猜想这是因为初始的proposal能够作为一种空间位置上的先验,帮助模型关注特定的物体区域,从而降低了从大量数据中学习关注局部区域的需要。

总结:综上,可以看出以下因素对模型的data efficiency其关键作用:(1)从局部区域的稀疏特征采样,例如采用RoIAlign;(2)多尺度特征融合,而这依赖于稀疏特征采样使得其运算量变得可接受;(3)相较于初始的空间位置先验作预测。其中(1)和(3)有利于模型关注到特定的物体区域,缓解从大量数据中学习locality的困难。(2)有利于充分利用和增强图像的特征,但其也依赖于稀疏特征。

值得一提的是,在DETR family中,Deformable DETR[4]是一个特例,它具有较好的数据效率。而我们基于Sparse RCNN和DETR的模型转化实验得到的结论同样也能够说明为什么Deformable DETR的具有较好的数据集效率:Multi-scale Deformable Attention从图像局部区域内做特征的稀疏采样,并运用了多尺度特征,同时模型的预测是相对于初始的reference point的。

我们的方法


模型增强

27f1fdc1e09ea9487853a1092e2c9889.jpeg
图2:我们的数据高效Detection Transformer模型结构。我们力求在尽可能少改动原模型的情况下,提升其数据效率。模型的backbone、transformer编码器和第一个解码器层均未变化

局部特征采样。从模型转化中的分析中可以看出,从局部物体区域做特征采样对实现数据效率是至关重要的。幸运的是,在Detection Transformer中,由于Deep Supervision[12]的存在,每一层解码器层中都为我们提供了物体检测框的信息。因此,我们可以在不引入新的参数的情况下,借助这些物体定位框来做局部特征采样。尽管可以采用更成熟的特征采用方法,我们采用最常用的RoI Align。从第二层解码器层开始,我们借助前一层解码器的输出来做稀疏特征采样。

迭代式预测和初始参考点。此外,Detection Transformer中级联的结构很自然地适合使用迭代式的检测框refinement来提升检测的性能。我们在模型转换中的实验也表明,迭代式的预测以及相对于初始的空间参考做预测有利于实现更准确的目标检测。为此,我们引入检测框的迭代式refinement和初始参考点。

多尺度特征融合。多尺度特征的运用有利于特征的高效利用,能够在数据量小的情况下提升检测性能。而我们的稀疏特征采样也使得在Detection Transformer中使用多尺度特征成为可能。尽管更成熟的多尺度融合技术可能被使用,我们仅仅利用bbox作为指导,对不同尺度的特征做RoIAlign,并将得到的序列concatenate在一起。

标签增强

c9eb4012b235d2247a5128635c763fea.jpeg
图3:(a)现有Detection Transformer的标签分配方式;(b)使用标签增强后的标签分配。圆圈和矩形框分别表示模型的预测和图片上的物体标注。通过复制橙色方框表示的物体标注,蓝色圆圈表示的模型预测也在标签分配中匹配到了正样本,因此得到了更丰富的监督信号。

尽管一对一的标签匹配形式简单,并能够避免去重过程,但也使得在每次迭代中,只有少量的检测候选能够得到有效的监督。模型不得不从更大量的数据或者更多的训练周期中获得足够的监督信号。为了解决这一问题,我们提出一种标签增强策略,通过在二分图匹配过程中重复正样本,来为Detection Transformer提供更丰富的监督信号,如图3所示。

在实现过程中,我们考虑两种不同的方式来复制正样本的标签,即(1)固定重复次数(Fixed Repeat Time):我们对所有正样本标签重复相同的次数;(2)固定正负样本标签的比例(Fixed positive-negative ratio):我们对正样本的标签进行重复采样,最终保证标签集合中正样本的比例固定。默认的,我们采用固定重复两次的标签增强方式。

实验

1bb8874896a82b5d97d87e452ac4e2ba.jpeg
表2:不同方法在小数据集Cityscapes上的性能比较

在本部分,我们首先将我们的方法和现有的Detection Transformer进行比较。如表2所示,大部分Detection Transformer面临数据效率低下的问题。而我们的DE-CondDETR在对CondDETR模型做微小改动的情况下能够取得和Deformable DETR相当的数据效率。而辅助以标签增强提供的更丰富的监督,我们的DELA-CondDETR能够取得比Deformable DETR更佳的性能。同样的,我们的方法也能够与其他Detection Transformer结合来显著提升其data efficiency,例如我们的DE-DETR和DElA-DETR能够在以仅仅50周期取得比DETR 500个周期要显著优越的性能。

a144da5944c4c353b23f982f715c1763.jpeg
图4:不同方法在下采样的COCO数据集上的性能比较。横轴表示数据下采样的比例(对数scale)。

此外我们对COCO 2017中的训练数据进行训练图像0.1,0.05,0.02和0.01倍的采样,来观察模型在不同数据量下的性能。如图4所示,在不同的训练数据量下,我们的方法始终能够取得显著优于基线方法的性能。特别的,仅用0.01倍的数据DELA-DETR的性能显著优于使用五倍数据的DETR基线。类似的,DELA-CondDETR性能始终优于用两倍数据训练的CondDETR基线。

c28fafe0e66e210d7f1dfb64bc8b3868.jpeg
表3:对模型中不同组件的消融实验

我们首先消融我们方法中各个模块的作用,如表3所示。使用局部特征采样和多尺度特征均能够显著提升模型的性能,分别带来8.3 AP和6.4 AP的提升。此外,使用标签增强能够进一步带来2.7 AP的性能提升。并且单独使用标签增强也能够带来2.6的性能提升。

1d9a8e484435a8dd86182392185cb4a8.jpeg
对标签增强的消融研究

如方法部分中讨论的,我们考虑了两种标签增强策略。包括固定重复次数和固定正负样本比例。在本部分,我们对这两种策略进行消融。如上表中左表所示,使用不同的固定重复倍数均能够提升DE-DETR的性能,但随重复次数增加,性能提升呈下降趋势。我们默认采用重复正样本标签2次。此外,如右表所示,尽管使用不同正负样本比例均能带来性能提升,在正负样本比例为1:3时,其取得的性能最佳,有趣的是,这也是RCNN系列检测器如Faster RCNN中最常用正负样本采样比例。

7ea510cd54a84248824d6062707d0571.jpeg
在训练数据充足的COCO 2017上的性能比较,所有模型都训练50个周期

尽管以上实验说明了我们的方法能够在数据量有限的情况下显著提升模型性能,它并不能表明我们的方法在数据量充足时依然有效。为此,我们在数据量充足的COCO2017上测试我们方法的性能。有趣的是,我们的方法不仅不会降低模型在COCO 2017上的性能,还能带来不小的提升。具体来说,DELA-DETR和DELA-CondDETR分别相较于它们的baseline提升8.1AP和2.8AP。

7aa0bcfb9b32066613f7740486551c29.jpeg
图5:不同模型在Cityscapes数据集上的收敛曲线,横轴表示训练周期数,纵轴表示mAP

最后,为了对本文方法带来的性能提升有一个直观的感受,我们提供了不同DETR变种在Cityscapes数据集上的收敛曲线,如图5所示。可以看出,我们的方法能够以更少的训练代价取得更加优越的性能,展示了其优越的数据效率。更多实验结果请参考原文及其附加材料。

总结

在本文中,我们指出了Detection Transformer数据效率低下的问题,并通过逐步的模型转化找了影响数据效率的关键因素。随后,我们以尽可能小的模型改动来大幅提升现有Detection Transformer的数据效率,并提出一种标签增强策略进一步提升其性能。随着Transformer在视觉任务中越发流行,我们希望我们的工作能够激发社区探究和提升Transformer在不同任务上的数据效率。

我们的论文和代码链接如下,欢迎大家关注我们的工作~

参考文献

  1. End-to-end Object Detection with Transformers

  2. Microsoft COCO: Common Objects in Context

  3. Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

  4. Deformable DETR: Deformable Transformers for End-to-End Object Detection

  5. Conditional DETR for Fast Training Convergence

  6. PnP-DETR: Towards Efficient Visual Analysis with Transformers

  7. Fast Convergence of DETR with Spatially Modulated Co-Attention

  8. The Cityscapes Dataset for Semantic Urban Scene Understanding

  9. Bridging the Gap Between Anchor-based and Anchor-free Detection via Adaptive Training Sample Selection

  10. Visformer: The Vision-Friendly Transformer

  11. An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale

  12. Deeply-Supervised Nets

点击进入—> CV 微信技术交流群

CVPR 2022论文和代码下载

后台回复:CVPR2022,即可下载CVPR 2022论文和代码开源的论文合集

后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF

目标检测和Transformer交流群成立
扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-目标检测或者Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如目标检测或者Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲扫码或加微信: CVer6666,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!▲扫码进群
▲点击上方卡片,关注CVer公众号
整理不易,请点赞和在看


推荐阅读
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本文介绍了Python语言程序设计中文件和数据格式化的操作,包括使用np.savetext保存文本文件,对文本文件和二进制文件进行统一的操作步骤,以及使用Numpy模块进行数据可视化编程的指南。同时还提供了一些关于Python的测试题。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • HTML学习02 图像标签的使用和属性
    本文介绍了HTML中图像标签的使用和属性,包括定义图像、定义图像地图、使用源属性和替换文本属性。同时提供了相关实例和注意事项,帮助读者更好地理解和应用图像标签。 ... [详细]
  • 本文介绍了使用哈夫曼树实现文件压缩和解压的方法。首先对数据结构课程设计中的代码进行了分析,包括使用时间调用、常量定义和统计文件中各个字符时相关的结构体。然后讨论了哈夫曼树的实现原理和算法。最后介绍了文件压缩和解压的具体步骤,包括字符统计、构建哈夫曼树、生成编码表、编码和解码过程。通过实例演示了文件压缩和解压的效果。本文的内容对于理解哈夫曼树的实现原理和应用具有一定的参考价值。 ... [详细]
  • 本文介绍了响应式页面的概念和实现方式,包括针对不同终端制作特定页面和制作一个页面适应不同终端的显示。分析了两种实现方式的优缺点,提出了选择方案的建议。同时,对于响应式页面的需求和背景进行了讨论,解释了为什么需要响应式页面。 ... [详细]
  • 统一知识图谱学习和建议:更好地理解用户偏好
    本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。 ... [详细]
  • 2016 linux发行版排行_灵越7590 安装 linux (manjarognome)
    RT之前做了一次灵越7590黑苹果炒作业的文章,希望能够分享给更多不想折腾的人。kawauso:教你如何给灵越7590黑苹果抄作业​zhuanlan.z ... [详细]
  • Iamtryingtocreateanarrayofstructinstanceslikethis:我试图创建一个这样的struct实例数组:letinstallers: ... [详细]
  • Windows7企业版怎样存储安全新功能详解
    本文介绍了电脑公司发布的GHOST WIN7 SP1 X64 通用特别版 V2019.12,软件大小为5.71 GB,支持简体中文,属于国产软件,免费使用。文章还提到了用户评分和软件分类为Win7系统,运行环境为Windows。同时,文章还介绍了平台检测结果,无插件,通过了360、腾讯、金山和瑞星的检测。此外,文章还提到了本地下载文件大小为5.71 GB,需要先下载高速下载器才能进行高速下载。最后,文章详细解释了Windows7企业版的存储安全新功能。 ... [详细]
  • OpenMap教程4 – 图层概述
    本文介绍了OpenMap教程4中关于地图图层的内容,包括将ShapeLayer添加到MapBean中的方法,OpenMap支持的图层类型以及使用BufferedLayer创建图像的MapBean。此外,还介绍了Layer背景标志的作用和OMGraphicHandlerLayer的基础层类。 ... [详细]
  • 如何压缩网站页面以减少页面加载时间
    本文介绍了影响网站打开时间的两个因素,即网页加载速度和网站页面大小。重点讲解了如何通过压缩网站页面来减少页面加载时间。具体包括图片压缩、Javascript压缩、CSS压缩和HTML压缩等方法,并推荐了相应的压缩工具。此外,还提到了一款Google Chrome插件——网页加载速度分析工具Speed Tracer。 ... [详细]
  • VSCode快速查看函数定义和代码追踪方法详解
    本文详细介绍了在VSCode中快速查看函数定义和代码追踪的方法,包括跳转到定义位置的三种方式和返回跳转前的位置的快捷键。同时,还介绍了代码追踪插件的使用以及对符号跳转的不足之处。文章指出,直接跳转到定义和实现的位置对于程序员来说非常重要,但需要语言本身的支持。以TypeScript为例,按下F12即可跳转到函数的定义处。 ... [详细]
author-avatar
无欲似水_803
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有